Call holding management

ABSTRACT

A system or a method may be provided that automatically distinguishes between a hold status and when someone live is talking on the phone. For example, the caller&#39;s phone may detect when the call holding has ended and a customer service representative is now actually on the line. The phone may alert the user to pick up the call at that time, such as utilizing a call-back mechanism. In an embodiment, the system may analyze and learn the various call holding music or recordings of call centers. The system may detect when the call holding music or recording ends in a telephone call and may alert the user.

BACKGROUND

Field of the Invention

The present invention generally relates to call holding and, inparticular, to systems and methods for managing call holding.

Related Art

With the proliferation of telecommunication, many businesses andcommercial activities are conducted by telecommunication. When customerscall a merchant or a customer service center, the customers may be puton hold in a queue due to the volume of incoming calls to the merchantor the customer service center. As such, a customer may be put on holdfor an unspecified amount of time before the customer can talk to acustomer service representative. This unspecified wait time may befrustrating for the customer, who has to continuously listen and wait onthe phone. Thus, there is a need for a system or a method that bettermanages call holding for the convenience of the customers.

BRIEF DESCRIPTION OF THE FIGURES

FIG. 1 is a block diagram of a networked system suitable forimplementing a process for managing call holding according to anembodiment.

FIG. 2 is a flowchart showing a process for setting up a system for callholding according to one embodiment.

FIG. 3 is a flowchart showing a process for managing call holdingaccording to one embodiment.

FIG. 4 is a block diagram of a computer system suitable for implementingone or more components in FIG. 1 according to one embodiment.

Embodiments of the present disclosure and their advantages are bestunderstood by referring to the detailed description that follows. Itshould be appreciated that like reference numerals are used to identifylike elements illustrated in one or more of the figures, whereinshowings therein are for purposes of illustrating embodiments of thepresent disclosure and not for purposes of limiting the same.

DETAILED DESCRIPTION

According to an embodiment, a system or a method may be provided thatautomatically distinguishes between a hold status and when someone liveis talking on the phone. For example, the caller's phone may detect whenthe call holding has ended and a customer service representative is nowactually on the line. The phone may alert the user to pick up the callat that time, such as utilizing a call-back mechanism. In an embodiment,the system may analyze and learn the various call holding music orrecordings of call centers. The system may detect when the call holdingmusic or recording ends in a telephone call and may alert the user.

In an embodiment, the call centers may implement a standard tone toindicate start and end of call holding. The caller's phone may detectthe standard tones indicating the start or end of call holding and mayalert the user. As such, the user need not hold the phone during thecall holding. Rather, the user may set the phone down. When the callholding ends, the system may notify the user by a notification, such asby an audio notification or vibration, which can be on the phone oranother user device, such as a second phone, a wearable computing device(e.g., glasses, smart watch, etc.) and the like.

In an embodiment, the system may provide advertisements, such as videoor audio advertisements to the user when the call holding is detected.As such, specific advertisements or promotions may be shown to the useras the user is waiting. The system may also provide additionalinformation about the call holding, such as estimated wait time, thenumber of callers in front of the user in the queue, the number ofcallers behind the user in the queue, and the like. The system also mayapply to calls between peers when one user puts another user on hold.

In an embodiment, the system may determine or customize advertisementsor promotions for the user based on the user's profile, such as theuser's purchase history, transaction history, browsing history and thelike. The user may be presented with the customized promotions oradvertisements during the call holding.

In an embodiment, the system may notify the user based on the user'snotification preferences. The system may allow the user to designate howthe user should be notified when the call holding is ended. Inparticular, the user may be notified by another device, such as a smartwatch, another mobile device, or the like. As such, the user need notstay with the phone during call holding.

FIG. 1 is a block diagram of a networked system 100 suitable forimplementing a process for managing call holding according to anembodiment. Networked system 100 may comprise or implement a pluralityof communication devices, servers, and/or software components thatoperate to perform various telephone communications. Exemplary serversmay include, for example, stand-alone and enterprise-class serversoperating a server OS such as a MICROSOFT® OS, a UNIX® OS, a LINUX® OS,or other suitable server-based OS. It can be appreciated that theservers illustrated in FIG. 1 may be deployed in other ways and that theoperations performed and/or the services provided by such servers may becombined or separated for a given implementation and may be performed bya greater number or fewer number of servers. One or more servers may beoperated and/or maintained by the same or different entities.

System 100 may include a user device 110, a telecommunication device140, a cellular tower 117, and a call holding management server 170 incommunication over network 160. A user 105 may utilize user device 110to perform telephone communication via network 160. A user 105 mayutilize user device 110 to initiate and receive telephone calls. Atelecommunication device 140 may be operated by a merchant, a customerservice center, or a general telephone call receiver. Telecommunicationdevice 140 may be configured to receive telephone calls from the userdevice 110. The phone call may be routed through network 160. Network160 may be a Public Switch Telephone Network (PSTN) including varioustelephone lines, fiber optic cables, cellular networks, communicationsatellites connected by switching/routing centers. In some embodiments,network 160 may include an Internet Protocol (IP) network configured tofacilitate Voice over IP (VoIP) communications. Call holding managementserver 170 may provide call holding functions and features to the userdevice 110 when the user 105 is put on hold by the telecommunicationdevice 140.

A telephone call may be initiated from user device 110. For example, theuser 105 may dial a phone number of the telecommunication device 140 atuser device 110. Thus, the telephone call may be designated for thetelecommunication device 140. Network 160 may route the telephone callthrough network 160 to the telecommunication device 140. In anembodiment, user device 110 may be a cellular telephone and may beconnected to cellular tower 117. Thus, the telephone call from the userdevice 110 may be routed to the telecommunication device 140 viacellular tower 117.

User device 110, telecommunication device 140, and call holdingmanagement server 170 may each include one or more processors, memories,and other appropriate components for executing instructions such asprogram code and/or data stored on one or more computer readable mediumsto implement the various applications, data, and steps described herein.For example, such instructions may be stored in one or more computerreadable media such as memories or data storage devices internal and/orexternal to various components of system 100, and/or accessible overnetwork 160.

User device 110 may be implemented using any appropriate hardware andsoftware configured for wired and/or wireless communication in thesystem 100. For example, in one embodiment, user device 110 may beimplemented as a personal computer (PC), a smart phone, personal digitalassistant (PDA), laptop computer, and/or other types of computingdevices capable of transmitting and/or receiving data, such as an iPad™from Apple™.

User device 110 may include one or more browser applications 115 whichmay be used, for example, to provide a convenient interface to permituser 105 to browse information available over network 160. For example,in one embodiment, browser application 115 may be implemented as a webbrowser configured to view information available over network 160, suchas a user account for setting up a shopping list and/or merchant sitesfor viewing and purchasing products and services. User device 110 mayalso include one or more toolbar applications 120 which may be used, forexample, to provide client-side processing for performing desired tasksin response to operations selected by the user 105. In one embodiment,toolbar application 120 may display a user interface in connection withbrowser application 115.

User device 110 may further include other applications 125 as may bedesired in particular embodiments to provide desired features to userdevice 110. For example, other applications 125 may include securityapplications for implementing client-side security features,programmatic client applications for interfacing with appropriateapplication programming interfaces (APIs) over network 160, or othertypes of applications.

Applications 125 may also include email, texting, voice and IMapplications that allow user 105 to send and receive emails, calls, andtexts through network 160. User device 110 includes one or more useridentifiers 130 which may be implemented, for example, as operatingsystem registry entries, cookies associated with browser application115, identifiers associated with hardware of user device 110, telephonenumber associated with user device 110 or other appropriate identifiers,such as used for payment/user/device authentication. In one embodiment,user identifier 130 may be used by a telephone communication serviceprovider to associate user 105 with a particular telephone accountmaintained by the telephone communication service provider.

User device 110 may include a communications application 122, withassociated interfaces, enables user device 110 to communicate withinsystem 100. For example, the communications application 112 may beconfigured to manage and implement wired communication, such as Ethernetcommunication and/or telephone landline communication, and wirelesscommunication, such as WiFi communication, Bluetooth communication,cellular voice and/or data communication, Near-Field Communication(NFC), and the like.

User device 110 also may include applications that collect location datausing Global Positioning System (GPS) to identify a location of userdevice 110. User device 110 may have a magnetometer configured to detecta moving or traveling direction of user device 110. Other means forcollecting location data, such as WiFi devices, Near-Field Communication(NFC) devices, or the like also may be included in user device 110 fordetermining a location of user device 110. Thus, user device 110 maydetermine a current location of user device 110 and track a travelingdirection of the user device 110 based on the collected location data.

The telecommunication device 140 may be maintained, for example, by amerchant, a customer service center, a company, or any other person ororganization who receives telephone calls. The telecommunication device140 may be configured to receive telephone calls. In an embodiment, thetelecommunication device 150 may route telephone calls to appropriatepersons or departments based on the request of the caller or based on anextension number entered by the caller. Telecommunication device 140 maybe configured to receive VoIP and/or PSTN telephone calls.

Telecommunication device 140 may include a call holding application 145.The call holding application 145 may include hardware and/or softwareconfigured to place incoming calls on hold. For example, when theintended party for the telephone call is not available or is busy, thecall holding application 145 may put the caller on hold. In anembodiment, the call holding application 145 may establish a queue ifmore than one callers are calling in for the same person or for the sametelephone line. As such, the calls may be answered in the order they arereceived.

Telecommunication device 140 may include a call holding presentationdatabase 145. The call holding presentation database 150 may storevarious presentations and/or content to be presented to the callers whenthe callers are put on hold. The presentations may include audiorecordings, music, promotional recording, and the like. When a caller isput on hold, a presentation may be selected and played to the caller.The presentation may include music or advertisements. The presentationalso may include announcements or notifications regarding the place orperson the caller is calling.

Telecommunication device 140 also may include a communicationsapplication 156, with associated interfaces, enables thetelecommunication device 140 to communicate within system 100. Forexample, the communications application 156 may be configured to manageand implement wired communication, such as Ethernet communication and/ortelephone landline communication, and wireless communication, such asWiFi communication, Bluetooth communication, cellular voice and/or datacommunication, Near-Field Communication (NFC), and the like.

Cellular tower 117 may be operated by one or more telecommunicationservice providers. Cellular tower 117 may be configured to managecommunication for cellular telephone devices located within the cellulartower 117's broadcast range. Cellular tower 117 may have access tonetwork 160 and may provide internet and/or telephone services tocellular devices within their respective broadcast ranges. The userdevice 110 may be located within the broadcast range of cellular tower117 and configured to facilitate cellular or data communication withcellular tower 117. Thus, the user device 110 may initiate and/orreceive telephone calls by connecting to the cellular tower 117.

Call holding management server 170 may be operated by a call holdingmanagement service provider or by a call holding management softwarecompany. The call holding management server 170 may include acommunications application 172, with associated interfaces, that enablethe call holding management server 170 to communicate within system 100.For example, the communications application 172 may be configured tomanage and implement wired communication, such as Ethernet communicationand/or telephone landline communication, and wireless communication,such as WiFi communication, Bluetooth communication, cellular voiceand/or data communication, Near-Field Communication (NFC), and the like.

The call holding management server 170 also may include an advertisementdatabase 174 configured to store various advertisements, promotions, orother types of presentations to be presented to users when they are puton hold. The presentation materials may be organized into differenttypes, interests, categories, and the like. Appropriate presentationsmay be selected for presentation to the users when they are put on holdbased on the users' demographics and interests.

The call holding management server 170 may include a call holdingroutine database 176. The call holding routine database 176 may storethe respective holding routines of various merchants, call centers,customer service centers, and any other persons or organizations thatput callers on hold. The call holding routine database 176 may includecall holding routine profiles of various entities. Each call holdingroutine profile may include the name of the entity or organization, thetelephone number(s), routine call holding presentations, and the like.Thus, each call holding routine profile may store the presentationsroutinely played or presented to callers by the entity or organizationwhen the callers are put on hold. The entity and/or organization mayhave multiple routine presentations or may have different routinepresentations for different sections or departments of the entity.

Call holding routine profiles also may include other call holdinginformation, such as average wait time of call holding, average queuelength, pattern of call volume, and the like. The call holdingmanagement server 170 may obtain the call holding routine informationfrom the various entities or organizations or may learn the routinesfrom monitoring calls made to the entities or organizations. The callholding management may continuously learn and update the call holdingroutine profiles to reflect the most up-to-date call holding routines ofvarious entities or organizations.

The call holding management server 170 may provide call holdingfunctions and features to the user 105 at user device 110. For example,the call holding management server 170 may provide call holding routinesto the user device 110 to help the user device 110 detect when the user105 is put on hold and when the call holding ends. The call holdingmanagement server 170 also may provide advertisements or promotions tothe user device 110 to be presented to the user 105 when the user 105 isput on hold during a telephone call.

FIG. 2 is a flowchart showing a process 200 for setting up call holdingmanagement according to one embodiment. At step 202, call holdingfeatures may be set up at user device 110. The user 105 may download anapplication for call holding at the user device 110. The call holdingapplication may provide various functions at the user device 110 formanaging call holdings. For example, when a new telephone account is setup at the user device 110, the telephone account may be registered atthe call holding management server 170. Telephone account informationmay include telephone number assigned to a telephone device, userinformation, service plan information, voice mail settings, telephonedevice type and model, call holding settings and preferences.

Call holding settings may have options for the user 105 to choosewhether the user 105 wishes to turn on the call holding functions. Theuser 105 may choose the types of presentation or music to be displayedor provided to the user 105 at the user device 110 during call holding.The user 105 also may choose how the user 105 should be notified whencall holding ends, such that the user 105 may resume the telephone callat the user device 110. For example, the user device 110 may emit aparticular audio sound, visual signals, vibrate, or the like to notifythe user 105 that the call holding has ended. In another example, theuser device 110 may communicate the notification to another device ofthe user 105, such as the user 105's smart watch or laptop computer,which may vibrate, emit audio or visual signals, or the like to notifythe user.

At step 204, the user device 110 or the call holding management server170 may learn respective routine call holding music or recordings atvarious merchants, call centers, customer service centers, and the like.In an embodiment, merchants, call centers, customer service centers, andother organizations that have call holding features may provide the callholding management server 170 with their respective routine call holdingmusic or recordings. These routine call holding music or recordings maybe stored and archived in the respective call holding routine profilesat the call holding management server 170. In some embodiments, the userdevice 110 or the call holding management server 170 may learn theseroutine call holding music or recordings by monitoring telephone callsof customers who are put on hold. Audio signal pattern recognitiontechniques may be used to analyze and recognize routine music orrecordings presented during call holding. The system may analyze andestablish an audio pattern signature for each routine call holding musicor recordings. For example, the audio pattern signature may includeunique data points in audio signals, such as the frequency and amplitudev. time in the audio signals of the routine music or recording. Theaudio pattern signature then may be used to recognize the respectiveroutine call holding music or recordings.

In an embodiment, various entities and organizations may agree upon astandard signal to indicate that the call is put on hold and anotherstandard signal to indicate that the call holding has ended. Thestandard signals may be a unique sequence of audible sound which may ormay not be heard by customers, but may be detected by the user device110 or the call holding management center 170. Thus, when the userdevice 110 or the call holding management server 170 detects thespecific signals, the user device 110 or the call holding managementserver 170 may determine when the call is being put on hold and when thecall holding ends.

In an embodiment, the call holding management server 170 may implementan user interface for call center navigation. In particular, the user105 may download a call holding application to user device 110 that mayprovide the user interface for call center navigation. In this case, thecall holding management server 170 may provide a standard communicationprotocol by data or voice communication for implementing various callcenter functions and features between the user device 110 and the otherparty in the telecommunication. For example, the user interface mayallow the user 105 to select a first option (Press 1) for additionalcall holding functions, select a second option (Press 2) to hearpromotions or advertisements, select a third option (Press 3) to hear orview queue information on the call holding, select a fourth option(Press 4) to hear or view weather, sport, news, entertainmentinformation, or the like. Thus, the call holding management server 170may implement additional call holding functions for a telecommunicationbetween the user 105 and the other party via the user interface. Thismay allow the user 105 to have a seamless user experience in obtainingadditional call holding features when the user 105 is put on hold.

At step 206, the user device 110 or the call holding management server170 may set up an advertisement or content database which may storevarious audio, video, or information presentations to be presented tothe user 105 during call holding. The presentations may include music,advertisements, promotions, news, entertainment, sports, and any otherinformation. The database may be organized into different types orcategories of presentations. The system may allow the user 105 to selector choose different types of presentations to be presented to the user105 during call holding.

At step 208, the user device 110 or the call holding management server170 may continue to receive and update various call holding features.The system may allow the user 105 to manage various call holdingfeatures based on the user 105's preferences. The system also maycontinuously monitor and learn different routine call holding music orrecordings of various merchants, call centers, customer service centers,and the like. Thus, routine call holding music or recordings maycontinuously be updated to reflect the most up-to-date routines of theseorganizations.

Accordingly, the user device 110 or the call holding management server170 may set up various call holding features for the user 105. Routinecall holding music or recordings at various merchants, call centers,customer service centers, and the like may be analyzed and learned bythe system to better detect when the user 105 is put on hold on atelephone call. Further, the various call holding features and theroutine call holding music or recordings may continuously be updated.

FIG. 3 is a flowchart showing a process 300 for implementing callholding management according to one embodiment. At step 302, the userdevice 110 or the call holding management server 170 may detect that atelephone call is started at the user device 110. The telephone call maybe initiated by the user 105 at the user device 110 or the user 105 mayreceive telephone call from others at the user device 110. The userdevice 110 or the call holding management server 170 may identify theother party of the telephone call based on the telephone number dialedby the user 105 or based on the caller identification function. Based onthe telephone number and/or the identity of the other party on the call,the system may determine whether the other party, such as thetelecommunication device 140, has a call holding routine or function.For example, the other party may be a call center, a customer servicecenter, a bank, a government entity, or the like who are likely to putthe user 105 on hold. Thus, the system may anticipate or monitor signalsor routine music or recordings that put the user 105 on hold.

At step 304, the user device 110 or the call holding management server170 may monitor the telephone communication. In an embodiment, thetelephone communication may be monitored by the user device 110 and anyunique or notable occurrences during the telephone call may becommunicated from the user device 110 to the call holding managementserver 170. For example, the user device 110 may determine the telephonenumber of the other party, such as by the caller identificationfunction, and may communicate the telephone number of the other party tothe call holding management server 170.

Based on the telephone number, the call holding management server 170may search in the call holding routine database 176 to find call holdingroutines of the other party. The call holding routine database 176 mayhold a comprehensive list of entities or organizations that have variouscall holding routines. Once the call holding routine associated with thetelephone number is found, the call holding management server 170 mayforward the audio signal signature or routine music or recordings usedby the entity or organization associated with the telephone number tothe user device 110. In particular, the unique audio signal patterns orsignatures of the routine music or recordings may be communicated to theuser device 110 to be used to detect the start or end of call holdingmusic or recordings during the telephone call. As such, the user device110 need not store a substantial amount of information regarding variouscall holding routines of many entities or organizations.

In an embodiment, the user device 110 may store the routine call holdingmusic or recordings of entities or organizations the user 105 frequentlycalls. For example, the user 105 may frequently call the user 105'stelecommunication service provider regarding phone bills. As such, theuser device 110 may store the routine call holding music or recordingsof the telecommunication service provider to detect when the user 105 isput on hold by the telecommunication service provider or when the callholding has ended.

At step 306, the user device 110 or the call holding management server170 may monitor and detect whether call holding has occurred or whetherthe user 105 has been put on hold by detecting when the call holdingroutine music or recording begins. In an embodiment, the user device 110or the call holding management server 170 may compare the audiocommunication occurring on the telephone call with the audio patterns ofthe routine call holding music or recordings. The system may detect thatthe user 105 has been put on hold when the audio communication of thetelephone call matches or substantially matches those of the audiopatterns of the routine call holding music or recordings.

In an embodiment, the system may detect when a conversation between theuser 105 and the other party has ended or when the user 105 stopstalking or is silent for an extended amount of time. For example, thecall holding music or recording may be a non-verbal type recording. Assuch, when no human voices are detected, this may indicate that the user105 is waiting or the user 105 has been put on hold. In this case, thesystem may begin to analyze the audio communication and may determinewhether the audio communication matches those of the routine callholding music or recordings. Thus, the system need not continuouslyanalyze the entire audio communication, but may monitor or analyze theaudio communication when a conversation has ended or when no human voiceis heard. This may conserver the processing resources of the system.

In some embodiments, the routine call holding music or recordings may bepresented repeatedly in a loop during the call holding. The user device110 may monitor and recognize that the routine call holding music orrecordings after a few repeatedly loops. The user device 110 may thendetermine that the user 105 is currently put on hold based on therepeated loops.

In an embodiment, the various entities or organizations may agree on astandard signal for indicating when call holding begins and anotherstandard signal when call holding ends. In another example, a specificsignal may continuously be presented during call holding. As such, thesystem may determine when the user 105 has been put on hold and when thecall holding has ended based on the standard signals detected in theaudio communication.

When no call holding is detected at step 306, the process may return tostep 304 at which the system may continue to monitor the telephonecommunication. When call holding is detected at step 306, the system mayimplement call holding features at step 308. The user 105 may choosefrom various call holding features. In an embodiment, the user 105 mayselect other types of video, audio, or informational presentations theuser 105 prefers and the system present the selected presentations tothe user 105 at user device 110. For example, the user 105 may selectand view sports, news, weather, or the like on the user device 110. Inanother example, the user 105 may select to view advertisements orpromotional presentations in exchange for offers, coupons, or certaincustomer rewards. The call holding management server 170 may provide thevarious presentations to the user device 110 to be presented to the user105.

In an embodiment, the system may automatically select presentations forthe user 105 based on the user 105's preferences and interests. Forexample, based on the user 105's browsing history, purchase history,music or video playlist, and other sources, the system may determinetypes or categories of presentations, such as new, music, movie, videos,and the like that the user 105 may be interested in listening orviewing.

In an embodiment, the call holding management server 170 may provideinformation regarding call holding to the user 105. For example, thecall holding management server 170 provide statistical informationregarding the call holding queues, such as average wait time, averagequeue length, estimated wait time, the position of the user 105 in thequeue, and the like. Thus, the user 105 may be informed regarding howlong the user 105 is estimated to be on hold. The call holdingmanagement server 170 may determine or obtain the call holding queueinformation based on statistical history of the call holding queue. Thecall holding management server 170 may also determine or obtain the callholding queue information from crowdsourcing, such as obtaininginformation from other callers or customers who are also calling or areput on hold.

In an embodiment, the call holding management server 170 may allow theuser 105 to put down the user device 110 or leave the user device 110.For example, the user 105 may put the telephone call on mute and mayleave the user device 110 to perform other tasks while the user 105 isput on hold. During this time, the system may continue to monitor thecall holding for the user 105 while the routine call holding musicand/or recordings are muted. The user 105 may select how the user 105 isto be notified when the call holding ends. Based on the user 105'ssituation and setting, the user 105 may choose to be notified by theuser device 110 or by another device of the user 105.

In an embodiment, when the user 105 is put on hold, the system maypresent call holding options to the user 105 at the user device 110. Theuser 105 may select from call holding options, such as stay on the linewithout enhanced call holding features, select and view otherpresentations, view advertisements or promotions to obtain rewards,leave the telephone call, and the like. If the user 105 chooses to leavethe telephone call or leave the user device 110, the system may presentoptions on how the user 105 is to be notified to return to the telephonecall or to the user device 110 when the call holding ends. Thenotification options may include notification at the user device 110,notification at another device of the user 105. The user 105 also maychoose the type of notification, such as by an audio sound, by a visualsignal, by a textual message and the like.

If the user 105 selects notification by another device, the system mayrequest information regarding another device. For example, the user 105may select to be notified by a smart watch wirelessly connected to theuser device 110. The system may request for the information about thesmart watch and how the notification at the smart watch should bepresented, such as by vibration or by a text message. In anotherexample, the user 105 may select to be notified by another device notconnected directly to the user device 110, such as a user 105's laptopor the user 105's home entertainment system. The system may requestcontact information, such as email address, IP address or the like, bywhich the system may send the notification to the device.

At step 310, the system may determine whether the call holding hasended. In an embodiment, the system may determine that the call holdinghas ended when the audio communication on the telephone call no longermatch the audio signal patterns of the routine call holding music orrecordings. In an embodiment, the system may detect the standard signalsthat indicate the end of the call holding, as agreed on by variousentities or organizations. In still another embodiment, the system maydetect that the repeated looping of the routine call holding music orrecording has ended.

In some embodiments, the system may detect that a live person hasstarted talking in the audio communication indicating the end of callholding. For example, the routine call holding music may be certaininstrumental music. The system may distinguish live person's human voicefrom the call holding instrumental music. In another example, the systemmay recognize certain words or phrases spoken by a live person when thelive person begins to talk, such as “hello” or “are you still there?”Thus, the system may determine that the call holding has ended byvarious techniques or a combination of different techniques.

If the system detects that the call holding has not ended at step 310,the process may return to step 308 at which the call holding featuresmay continue to be implemented. If the system determines that the callholding has ended at step 310, the system may end the call holdingfeatures and may notify the user 105 at step 312. In an embodiment, thesystem may end the presentations or advertisements being presented tothe user 105 at the user device 110 and may redirect the user 105 backto the phone call. For example, the user device 110 may display amessage “Call holding has ended, tap “ok” to return to phone call.” Theuser 105 may be provided with the option of viewing or listening to theremaining portion of the presentation later after the phone call isended.

In an embodiment, the system may notify the user 105 who left the phonecall or left the user device 110 to do other tasks. In this case, thesystem may notify the user 105 based on the notification methodpreviously requested by the user 105. For example, the system may call,text, email, or cause the user device 110 or another device of the user105 to emit audio or visual signals, or vibrate. In an embodiment, thesystem may inform the other party of the phone call that the user 105 isbeing notified. Thus, the other party may be informed to wait for theuser 105's return.

In another embodiment, the type of notification, type of delivery (e.g.,sound, vibration, visual indicator, etc.), and/or device receiving thepresentation may be dependent on various factors, such as location of auser device, background noise, time of day, etc. For example, if a lotof background noise is detected, such as at a train station or socialevent, the notification may be with a louder audio signal, a visualsignal, and/or a vibration. In another example, if the user is detectedat a library or movie theater, the notification may be a silentvibration. As such, an appropriate notification may be delivered thatresults in a higher likelihood the user notice the notification and/orless disturbance to others near the user.

By using the above process 300, call holding in a telephonecommunication may be detected and enhanced call holding functions may beimplemented for the user 105. As such, the user 105 may be presentedwith preferred content or the user 105 may be allowed to leave the phonecall during the call holding. The system also may detect when the callholding has ended and may notify the user 105 to return to the phonecall. As a result, the user 105 may have a better experience during acall holding period.

FIG. 4 is a block diagram of a computer system 400 suitable forimplementing one or more embodiments of the present disclosure. Invarious implementations, the user device may comprise a personalcomputing device (e.g., smart phone, a computing tablet, a personalcomputer, laptop, PDA, Bluetooth device, key FOB, badge, etc.) capableof communicating with other communication devices and the network 160.The merchant and/or payment provider may utilize a network computingdevice (e.g., a network server) capable of communicating with othercommunication devices and the network 160. It should be appreciated thateach of the devices utilized by users, merchants, and payment providersmay be implemented as computer system 400 in a manner as follows.

Computer system 400 includes a bus 402 or other communication mechanismfor communicating information data, signals, and information betweenvarious components of computer system 400. Components include aninput/output (I/O) component 404 that processes a user action, such asselecting keys from a keypad/keyboard, selecting one or more buttons orlinks, etc., and sends a corresponding signal to bus 402. I/O component404 may also include an output component, such as a display 411 and acursor control 413 (such as a keyboard, keypad, mouse, etc.). Anoptional audio input/output component 405 may also be included to allowa user to use voice for inputting information by converting audiosignals. Audio I/O component 405 may allow the user to hear audio. Atransceiver or network interface 406 transmits and receives signalsbetween computer system 400 and other devices, such as another userdevice, a merchant server, or a payment provider server via network 360.In one embodiment, the transmission is wireless, although othertransmission mediums and methods may also be suitable. A processor 412,which can be a micro-controller, digital signal processor (DSP), orother processing component, processes these various signals, such as fordisplay on computer system 400 or transmission to other devices via acommunication link 418. Processor 412 may also control transmission ofinformation, such as cookies or IP addresses, to other devices.

Components of computer system 400 also include a system memory component414 (e.g., RAM), a static storage component 416 (e.g., ROM), and/or adisk drive 417. Computer system 400 performs specific operations byprocessor 412 and other components by executing one or more sequences ofinstructions contained in system memory component 414. Logic may beencoded in a computer readable medium, which may refer to any mediumthat participates in providing instructions to processor 412 forexecution. Such a medium may take many forms, including but not limitedto, non-volatile media, volatile media, and transmission media. Invarious implementations, non-volatile media includes optical or magneticdisks, volatile media includes dynamic memory, such as system memorycomponent 414, and transmission media includes coaxial cables, copperwire, and fiber optics, including wires that comprise bus 402. In oneembodiment, the logic is encoded in non-transitory computer readablemedium. In one example, transmission media may take the form of acousticor light waves, such as those generated during radio wave, optical, andinfrared data communications.

Some common forms of computer readable media includes, for example,floppy disk, flexible disk, hard disk, magnetic tape, any other magneticmedium, CD-ROM, any other optical medium, punch cards, paper tape, anyother physical medium with patterns of holes, RAM, PROM, EEPROM,FLASH-EEPROM, any other memory chip or cartridge, or any other mediumfrom which a computer is adapted to read.

In various embodiments of the present disclosure, execution ofinstruction sequences to practice the present disclosure may beperformed by computer system 400. In various other embodiments of thepresent disclosure, a plurality of computer systems 400 coupled bycommunication link 418 to the network (e.g., such as a LAN, WLAN, PTSN,and/or various other wired or wireless networks, includingtelecommunications, mobile, and cellular phone networks) may performinstruction sequences to practice the present disclosure in coordinationwith one another.

Where applicable, various embodiments provided by the present disclosuremay be implemented using hardware, software, or combinations of hardwareand software. Also, where applicable, the various hardware componentsand/or software components set forth herein may be combined intocomposite components comprising software, hardware, and/or both withoutdeparting from the spirit of the present disclosure. Where applicable,the various hardware components and/or software components set forthherein may be separated into sub-components comprising software,hardware, or both without departing from the scope of the presentdisclosure. In addition, where applicable, it is contemplated thatsoftware components may be implemented as hardware components andvice-versa.

Software, in accordance with the present disclosure, such as programcode and/or data, may be stored on one or more computer readablemediums. It is also contemplated that software identified herein may beimplemented using one or more general purpose or specific purposecomputers and/or computer systems, networked and/or otherwise. Whereapplicable, the ordering of various steps described herein may bechanged, combined into composite steps, and/or separated into sub-stepsto provide features described herein.

The foregoing disclosure is not intended to limit the present disclosureto the precise forms or particular fields of use disclosed. As such, itis contemplated that various alternate embodiments and/or modificationsto the present disclosure, whether explicitly described or impliedherein, are possible in light of the disclosure. Having thus describedembodiments of the present disclosure, persons of ordinary skill in theart will recognize that changes may be made in form and detail withoutdeparting from the scope of the present disclosure. Thus, the presentdisclosure is limited only by the claims.

What is claimed is:
 1. A system comprising: a hardware memory storinginformation regarding call holding features for telephonecommunications, and one or more processors in communication with thememory and adapted to: detect, by a mobile call holding app installed ona mobile telephone device of a user, an initiation of a telephonecommunication at the mobile telephone device between the user and acalled party; identify the called party of the telephone communicationbased on a telephone number of the called party; in response toidentifying the called party of the telephone communication, search acall holding routine database using the telephone number or an identityof the called party to find a call holding routine of the called party;communicate the call holding routine of the called party to the mobiletelephone device of the user; monitor, by the mobile call holding app,the telephone communication using the call holding routine of the calledparty to detect whether a call holding has occurred; determine, by themobile call holding app, that the user is put on hold during thetelephone communication by detecting a call holding recording thatmatches the call holding routine of the called party; in response todetermining that the user is put on hold, present call holding optionsselectable by the user via the mobile call holding app on the mobiletelephone device of the user; and implement, by the mobile call holdingapp, a call holding feature selected by the user from the call holdingoptions and separate from the telephone communication during the callholding.
 2. The system of claim 1, wherein the call holding recording isrepeated in a loop during the call holding and wherein the one or moreprocessors are further adapted to detect the call holding recordingbased on the loop.
 3. The system of claim 1, wherein the call holdingrecording is a non-verbal type recording and wherein the one or moreprocessors are further adapted to detect the call holding when no humanvoices are detected in the telephone communication for a predetermineamount of time.
 4. The system of claim 1, wherein the one or moreprocessors are further adapted to: maintain the call holding routinedatabase storing routine call holding recordings of various entities;determine a routine call holding recording for the telephonecommunication from the call holding routine database; compare theroutine call holding recording with an audio pattern of the telephonecommunication; and detect the call holding when the audio pattern of thetelephone communication matches that of the routine call holdingrecording.
 5. The system of claim 4, wherein the routine call holdingrecording comprises unique audio signal patterns to be compared with theaudio pattern of the telephone communication.
 6. The system of claim 5,wherein the unique audio signal patterns comprise amplitude andfrequency versus time data points of the routine call holding recording.7. The system of claim 1, wherein the call holding feature comprisespresenting one or more of audio presentations, video presentations, andtextual information to the user at a user device based on userpreferences.
 8. The system of claim 7, wherein the user preferences aredetermined based on one or more of a browsing history of the user, apurchase history of the user, and a transaction history of the user. 9.The system of claim 1, wherein the call holding feature comprisesoffering rewards to the user in exchange for the user viewingadvertisements or promotions.
 10. The system of claim 1, wherein thecall holding feature allows the user to leave the telephonecommunication, and wherein the one or more processors are furtheradapted to notify the user to return to the telephone communication whenthe call holding ends.
 11. The system of claim 10, wherein the user isnotified at a user device at which the telephone communication isinitiated.
 12. The system of claim 10, wherein the user is notified atanother device of the user different from a user device at which thetelephone communication is initiated.
 13. The system of claim 12, wherethe another device is a wearable device worn by the user and connectedto the user device.
 14. A method comprising: detecting, by a mobile callholding app installed on a mobile telephone device of a user, aninitiation of a telephone communication at the mobile telephone devicebetween the user and a called party; identifying the called party of thetelephone communication based on a telephone number of the called party;in response to identifying the called party of the telephonecommunication, searching a call holding routine database using thetelephone number or an identity of the called party to find a callholding routine of the called party; communicating the call holdingroutine of the called party to the mobile telephone device of the user;monitoring, by the mobile call holding app, the telephone communicationusing the call holding routine of the called party to detect whether acall holding has occurred; determining, by the mobile call holding app,that the user is put on hold during the telephone communication bydetecting a routine call holding recording that matches the call holdingroutine of the called party; in response to determining that the user isput on hold, presenting call holding options selectable by the user viathe mobile call holding app on the mobile telephone device of the user;and implementing, by the mobile call holding app, a call holding featureselected by the user from the call holding options and separate from thetelephone communication during the call holding.
 15. The method of claim14, wherein the routine call holding recording is detected by comparingaudio patterns of the telephone communication with audio patternsignatures of the routine call holding recording.
 16. The method ofclaim 15 further comprising: collecting routine call holding recordingsfrom various entities that implement call holding; determining an audiopattern signature for each of the routine call holding recordings; andstoring the audio pattern signature for each of the routine call holdingrecordings in the call holding routine database.
 17. The method of claim16, wherein the routine call holding recordings are collected frommonitoring telephone communication between the user and the variousentities.
 18. The method of claim 16, wherein the routine call holdingrecordings are collected by crowdsourcing based on telephonecommunication between other users and the various entities.
 19. Themethod of claim 14, wherein the call holding feature allows the user toleave the telephone communication, and wherein the method furthercomprises notifying the user to return to the telephone communicationwhen the call holding ends.